package com.zensun.system.domain.vo;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.zensun.common.utils.convert.JsonDateToLong;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * 部门详情返回实体
 *
 * @author czq
 * @time 2021年1月22日 下午2:38:52
 */
@ApiModel("部门列表树实体")
@Data
public class SysDeptTreeListVo {

    /**
     * 部门ID
     */
    @ApiModelProperty("部门ID")
    private Long deptId;

    /**
     * 父部门ID
     */
    @ApiModelProperty("父部门ID")
    private Long parentId;

    /**
     * 部门名称
     */
    @ApiModelProperty("部门名称")
    private String deptName;

    /**
     * 部门名称
     */
    @ApiModelProperty("类型（1:部门 2:项目）")
    private String type;

    /**
     * 层级
     */
    @ApiModelProperty("层级")
    private Integer level;

    /**
     * 是否本人（不是 是）
     */
    @ApiModelProperty("是否本人")
    private Boolean isSelf;

    /**
     * 创建时间
     */
    @JsonSerialize(using = JsonDateToLong.class)
    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    @ApiModelProperty("子类部门")
    private List<SysDeptTreeListVo> children = new ArrayList<SysDeptTreeListVo>();


}
